const array = [
    {
      code: 101,
      name: '北京',
    },
    {
      code: 102,
      name: '石家庄',
    },
    {
      code: 102,
      name: '江苏',
      children: [{
          code: 102,
          name: '南京',
      },{
          code: 102,
          name: '连云港',
      }]
    }
  ]
//   //转换成：
  
//   {
//     '北京'：{
//       code: 101,
//       name: '北京'
//     },
//     '石家庄':{
//        code: 102
//        name: '石家庄'
//     },
//     '南京':{
//        code: 102
//        name: '南京'
//     },
//     '连云港':{
//        code: 102
//        name: '连云港'
//     }
//   }
 

console.log(toObj(array))

function toObj(arr) {
    let obj = {};
    for(let item of arr) {
        if(item['children']!==undefined) {
            obj = {...toObj(item['children']),...obj};
        }else {
            obj[item.name]=item;
        }
        
    }
    return obj;
}